// 重载 Ext.data.Store.prototype.applySort 函数以修复 DataStore 对汉字排序异常的问题   
// var _applySort = Ext.data.Store.prototype.applySort;           
//如有需要，保存原 applySort 函数的引用   
Ext.data.Store.prototype.applySort = function(){          
         //重载 applySort   
        if(this.sortInfo && !this.remoteSort){   
                var s = this.sortInfo, f = s.field;   
                var st = this.fields.get(f).sortType;   
                var fn = function(r1, r2){   
                        var v1 = st(r1.data[f]), v2 = st(r2.data[f]);   
                        // 添加:修复汉字排序异常的Bug   
                        if(typeof(v1) == "string"){ //若为字符串，   
                                return v1.localeCompare(v2);   
                                //则用 localeCompare 比较汉字字符串, Firefox 与 IE 均支持   
                        }   
                        // 添加结束   
                        return v1 > v2 ? 1 : (v1 < v2 ? -1 : 0);   
                };   
                this.data.sort(s.direction, fn);   
                if(this.snapshot && this.snapshot != this.data){   
                        this.snapshot.sort(s.direction, fn);   
                }   
        }   
};   
